Data transmission protocols which need to have bounded disparity, run length, or DC balance often use character coding to achieve this. The coding may also be used to demarcate sequences, for example, the beginning and/or end of data packets, idle, and exception sequences. The purpose of the frame is not defined by the initial or final code character and so additional overhead is involved to do this. This may present a problem.